package mysql.v1;

import java.sql.*;

public class MysqlJDBCV1 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.注册驱动--链接对应数据库--Mysql15.5驱动器
        Class.forName("com.mysql.jdbc.Driver");
        //2.准备工作：用户名、密码、url--Java字符串
        String username = "root";
        String password = "";
        String url = "jdbc:mysql://127.0.0.1:3306/mi?characterEncoding=UTF-8";
        //3.链接数据库--DriverManager.getConnection();
        Connection con = DriverManager.getConnection(url, username, password);
        //打桩：测试数据库 是否链接成功，链接成功返回Connection对象
        System.out.println("测试是否成功:" + con);


    //4.执行sql【查询】
    //4.1 mysql 有库 mi 设置编码集  有表
    //4.2 java 执行sql 【字符串查询】
    String sql="select * from book";
    //4.3 java  执行sql增删改查---链接成功数据库
    //Statement执行sql    查操作   executeQuery()
    //                            返回值：ResultSet  结果集对象
    //Statement执行sql    增删改操作   executeUpdate()
    //                              返回值：int 记录成功多少条

    Statement st=con.createStatement();
    //ResultSet结果集保存表中所有数据
    ResultSet rs= st.executeQuery(sql);
//5  查询【book表】ResultSet 对象提供next()  依次获取字段下记录【数据】
//book 表--字段7个-- while 循环拿所有字段以及记录数
//看数据--ResultSet结果集--取---字段下记录
        while(rs.next()) {  //依次取出数据库中book表所有字段
            //显示字段下记录
            //getInt() 取出数据库中 int类型的字段
            //mysql int类型 java int类型
            int id = rs.getInt("id");
            //mysql varchar类型 java String类型
            String author = rs.getString("author");
            String name = rs.getString("name");
            int price = rs.getInt("price");
            String date = rs.getString("date");
            int number = rs.getInt("number");
            String discount = rs.getString("discount");
            //打桩：显示多少作者
            System.out.println(name);
        }
    }
}